<script>
import Vue from 'vue';
import pageAnimation from '@/components/yy-PageAnimation';
export default {
    mixins: [pageAnimation],
    onLaunch: function(e) {
        console.log('绑定关系: ', e); //绑定关系
        uni.getSystemInfo({
            success: function(e) {
				uni.setStorageSync('platform', e.platform)
				Vue.prototype.windowHeight = e.windowHeight - e.statusBarHeight - 48;
                // #ifndef MP
                Vue.prototype.StatusBar = e.statusBarHeight;
                if (e.platform == 'android') {
                    Vue.prototype.CustomBar = e.statusBarHeight + 50;
                } else {
                    Vue.prototype.CustomBar = e.statusBarHeight + 45;
                }
                // #endif
                // #ifdef MP-WEIXIN
                Vue.prototype.StatusBar = e.statusBarHeight;
                let custom = wx.getMenuButtonBoundingClientRect();
                Vue.prototype.Custom = custom;
				Vue.prototype.windowHeight = e.windowHeight - e.statusBarHeight - 48;
                Vue.prototype.CustomBar = custom.bottom + custom.top - e.statusBarHeight;
                // #endif
                // #ifdef MP-ALIPAY
                Vue.prototype.StatusBar = e.statusBarHeight;
                Vue.prototype.CustomBar = e.statusBarHeight + e.titleBarHeight;
                // #endif
            },
        });
    },
	onShow: function() {
		console.log('App Show 主页');
		
	},
	onHide: function() {
		console.log('App Hide');
	},
	onLaunch() {
		this.newestList()
	},
	mounted() {
		/**官网有很多关于关于sdk 其他的监听方法（比如：有新的消息，用户资料更新等等）
		 * 详情可对照： https://imsdk-1252463788.file.myqcloud.com/IM_DOC/Web/SDK.html
		 * 监听的含义：服务端发生了数据变更---前端全局可以接收到变更通知--前端就可以自动触发某个事件来更新相应数据
		 * */
		// 登录成功后会触发 SDK_READY 事件，该事件触发后，可正常使用 SDK 接口
		this.tim.on(this.$TIM.EVENT.SDK_READY, this.onReadyStateUpdate, this);
		// 收到新消息
		this.tim.on(this.$TIM.EVENT.MESSAGE_RECEIVED, this.onReceiveMessage);
		// 会话列表更新
		this.tim.on(this.$TIM.EVENT.CONVERSATION_LIST_UPDATED, event => {
			this.$store.commit("updateConversationList", event.data);
		});
	},
	methods: {
		// 最新 列表
		async newestList() {
			const res = await this.$u.get('api/user/play/kind');
			if (res.code == 200) {
			console.log('res==>', res);
				
			}
		},
		
		onReadyStateUpdate({name}) {
			const isSDKReady = name === this.$TIM.EVENT.SDK_READY ? true : false;
			//自动监听并更新 sdk 的ready 状态 （未登录是 notReady  登录后是ready）
			this.$store.commit("toggleIsSDKReady", isSDKReady);
		    //sdk ready 后  肯定完成了登录操作    这里可以获取用户存储在im的基础信息/离线消息/黑名单列表
		},
		
		onReceiveMessage({data: messageList}) {
			// this.handleAt(messageList);
			this.$store.commit("pushCurrentMessageList", messageList);
		},
	}
};
</script>

<style lang="scss">
/*每个页面公共css */

@import 'common/colorui/main.css';
@import 'common/colorui/icon.css';
@import 'common/colorui/animation.css';
@import 'common/uview-ui/index.scss';

// 去除H5页面滚动有滚动条
uni-page {
    overflow: auto;
}

page {
    width: 100%;
    height: 100%;
    font-family: PingFang SC;
    background-color: #ffffff;
    text {
        font-family: PingFang SC;
    }
}

view {
    font-family: PingFang SC;
}

</style>
